package com.fs.cv.dao;
import com.fs.cv.pojo.pojoview.StudentCourse;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>查询学生成绩，用于管理学生的成绩</p>
 *
 * @author : 苏明友
 * @date : 2020-09-28 19:07
 **/
public interface StudentCourseDao {

    /**
     * 方法描述:老师查看并且管理所有学生的成绩
     * @参数 [studentId]
     * @返回值 java.util.List<com.fs.cv.pojo.Student>
     * @作者 苏明友
     * @时间 2020/9/28
     */

    List<StudentCourse> getAllStudentCourseByStudentId(@Param("userId") Integer userId);

    /**
     * 方法描述:模糊查询
     * @参数 [column, studentNameValue, userId]
     * @返回值 java.util.List<com.fs.cv.pojo.pojoview.StudentCourse>
     * @作者 苏明友
     * @时间 2020/10/8
     */
    List<StudentCourse> queryStudentByColumn(@Param("column") String column, @Param("studentNameValue") String studentNameValue,@Param("userId") Integer userId);

  /**
   * 方法描述:根据学生的id逻辑删除学生的成绩信息
   * @参数 [studentId]
   * @返回值 int
   * @作者 苏明友
   * @时间 2020/10/8
   */
    int deleteStudentScoreByStudentId(@Param("studentId")Integer studentId);

    /**
     * 方法描述:根据学生的id查询学生的课程以及所对应的成绩信息，然后显示到成绩编辑的模态框中
     * @参数 [studentId]
     * @返回值 java.util.List<com.fs.cv.pojo.pojoview.StudentCourse>
     * @作者 苏明友
     * @时间 2020/10/8
     */
    StudentCourse getCourseByStudentId(@Param("studentId")Integer studentId);

    /**
     * 方法描述:根据id编辑学生的课程分数（成绩）
     * @参数 [studentCourse]
     * @返回值 int
     * @作者 苏明友
     * @时间 2020/10/9
     */
    int editScoreById(StudentCourse studentCourse);

    /**
     * 方法描述:根据id编辑学生的课程名字
     * @参数 [studentCourse]
     * @返回值 int
     * @作者 苏明友
     * @时间 2020/10/9
     */
    int editCourseById(StudentCourse studentCourse);

}
